const { defineConfig } = require('@vue/cli-service')
const path = require('path');
// 获取绝对路径
function resolve(dir) {
  return path.join(__dirname, dir)
}

const port = 7070;
module.exports = defineConfig({
  transpileDependencies: true,
  publicPath: process.env.VUE_APP_PUBLIC_PATH,
  devServer: {
    port,
    proxy: {
      // 代理 /dev-api/user/login 到 http://127.0.0.1:3000/user/login
      [process.env.VUE_APP_BASE_API]: {
        target: `http://127.0.0.1:3000/`,
        changeOrigin: true,
        pathRewrite: {
          ["^" + process.env.VUE_APP_BASE_API]: ""
        }
      }
    },
  },
  configureWebpack: {
    name: "VUE-ADMIN-MS" // 设置⼀个webpack配置项⽤于⻚⾯title
  },
  chainWebpack(config) {
    // 排除icons⽬录中svg⽂件处理
    config.module.rule("svg")
      .exclude.add(resolve("src/icons"))

    // 使用svg-sprite-loader处理icons⽬录中的svg文件
    config.module.rule('icons')
      .test(/\.svg$/)
      .include.add(resolve('./src/icons')).end()
      .use('svg-sprite-loader')
      .loader('svg-sprite-loader')
      .options({ symbolId: 'icon-[name]' })
  }
})
